/**
 * Copyright &copy; 2020 <a href="https://github.com/somowhere/exam-system">exam-system</a> All rights reserved.
 */
package com.shanhesoft.java.modules.exam.domain.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import javax.validation.constraints.*;

import com.shanhesoft.java.common.core.vo.DataDto;

import java.util.Date;

/**
 * 提交记录历史Dto 提交记录历史
 * @author admin
 * @version 2020-09-26 20:35:36
 */
@Data @ToString @NoArgsConstructor @AllArgsConstructor
public class OjSubmissionsHistoryDto extends DataDto<String> {

	private static final long serialVersionUID = 1L;
	/** F_COURSEID course_id  :  课程编号 */
	public static final String F_COURSEID = "courseId";
	/** F_QUESTIONBANKID question_bank_id  :  题库编号 */
	public static final String F_QUESTIONBANKID = "questionBankId";
	/** F_PROBLEMID problem_id  :  试题编号 */
	public static final String F_PROBLEMID = "problemId";
	/** F_UID uid  :  评测提交者用户编号 */
	public static final String F_UID = "uid";
	/** F_LANGUAGEID language_id  :  提交所使用的语言编号 */
	public static final String F_LANGUAGEID = "languageId";
	/** F_ANSWERID answer_id  :  试卷/练习答案编号 */
	public static final String F_ANSWERID = "answerId";
	/** F_SUBMISSIONSUBMITTIME submission_submit_time  :  评测提交时间 */
	public static final String F_SUBMISSIONSUBMITTIME = "submissionSubmitTime";
	/** F_SUBMISSIONEXECUTETIME submission_execute_time  :  评测开始执行时间 */
	public static final String F_SUBMISSIONEXECUTETIME = "submissionExecuteTime";
	/** F_SUBMISSIONUSEDTIME submission_used_time  :  评测运行总时间 */
	public static final String F_SUBMISSIONUSEDTIME = "submissionUsedTime";
	/** F_SUBMISSIONUSEDMEMORY submission_used_memory  :  评测运行占用最大内存 */
	public static final String F_SUBMISSIONUSEDMEMORY = "submissionUsedMemory";
	/** F_SUBMISSIONJUDGERESULT submission_judge_result  :  评测结果 */
	public static final String F_SUBMISSIONJUDGERESULT = "submissionJudgeResult";
	/** F_SUBMISSIONJUDGESCORE submission_judge_score  :  评测运行得分 */
	public static final String F_SUBMISSIONJUDGESCORE = "submissionJudgeScore";
	/** F_SUBMISSIONJUDGELOG submission_judge_log  :  评测运行日志 */
	public static final String F_SUBMISSIONJUDGELOG = "submissionJudgeLog";
	/** F_SUBMISSIONCODE submission_code  :  评测所执行的代码 */
	public static final String F_SUBMISSIONCODE = "submissionCode";


	/** courseId 课程编号 */
 @NotBlank @Size(max=50)
	private String courseId;
	/** questionBankId 题库编号 */
 @NotBlank @Size(max=50)
	private String questionBankId;
	/** problemId 试题编号 */
 @NotBlank @Size(max=50)
	private String problemId;
	/** uid 评测提交者用户编号 */
 @NotBlank @Size(max=50)
	private String uid;
	/** languageId 提交所使用的语言编号 */
 @NotBlank @Size(max=50)
	private String languageId;
 	/** 试卷/练习答案编号*/
	@Size(max=50)
	private String answerId;
	/** submissionSubmitTime 评测提交时间 */
 @NotNull
	private Date submissionSubmitTime;
	/** submissionExecuteTime 评测开始执行时间 */

	private Date submissionExecuteTime;
	/** submissionUsedTime 评测运行总时间 */

	private Long submissionUsedTime;
	/** submissionUsedMemory 评测运行占用最大内存 */

	private Long submissionUsedMemory;
	/** submissionJudgeResult 评测结果 */
 @NotBlank @Size(max=8)
	private String submissionJudgeResult;
	/** submissionJudgeScore 评测运行得分 */

	private Long submissionJudgeScore;
	/** submissionJudgeLog 评测运行日志 */
 @Size(max=65535)
	private String submissionJudgeLog;
	/** submissionCode 评测所执行的代码 */
 @NotBlank @Size(max=65535)
	private String submissionCode;


}
